/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package util;

import javax.microedition.lcdui.Command;
import javax.bluetooth.UUID;
import jogo.Peca;

/**
 *
 * @author Thiago Nascimento e Pablo Viana
 */
public class Constantes {

    public static final Peca[] pecas = {new Peca(0, 0), new Peca(0, 1), new Peca(0, 2), new Peca(0, 3),
        new Peca(0, 4), new Peca(0, 5), new Peca(0, 6), new Peca(1, 1),
        new Peca(1, 2), new Peca(1, 3), new Peca(1, 4), new Peca(1, 5),
        new Peca(1, 6), new Peca(2, 2), new Peca(2, 3), new Peca(2, 4),
        new Peca(2, 5), new Peca(2, 6), new Peca(3, 3), new Peca(3, 4),
        new Peca(3, 5), new Peca(3, 6), new Peca(4, 4), new Peca(4, 5),
        new Peca(4, 6), new Peca(5, 5), new Peca(5, 6), new Peca(6, 6)
    };
    public static final String[] nomeJogadores = {"Flora", "Hugo", "Breno", "Caio", "João", "Maria", "Pedro", "Fabio", "Aline", "Roberta"};
    public static int TIME_OUT = 2000;
    /**
     * Caminhos dos recursos. Raiz = /res/
     */
    
    public static final String RESOURCE_PATH = "/";
    public static final int IMAGE_INICIAL = 1;
    public static final String MENU[] = { "Iniciar Jogo", "Procurar Jogo", "Ajuda", "Opções","Nível", "Sair" };
    public static final UUID DOMINO_UUID = new UUID(0x003768);
    public static final String SERVER_URL = "btspp://localhost:" + Constantes.DOMINO_UUID + ";name=domino;authorize=true";
    public static final String RMS_JOGADORES = "nome_jogadores";
    
    // [nome]
    public static final int PACOTE_CONECTAR = 0;
    // [nome] [partida] [rodada]
    public static final int PACOTE_STATUS = 1;
    // [nome] [lado] [valor1] [valor2]
    public static final int PACOTE_JOGAR = 2;
    
    // status do cliente quando ainda nao entrou em nenhum servidor de jogo
    public static final int STATUS_PROCURANDO_JOGO = 0;
    // resposta do status traz: [esta_no_jogo] [num_conectados] [nome_jogador1] [nome_jogador2]...
    public static final int STATUS_ESPERANDO_INICIAR = 1;
    // resposta do status traz: [partida] [jogador_da_vez] [timestamp_quando_comecou_a_vez] 
    public static final int STATUS_ESPERANDO_JOGADA = 3;    
    //
    public static final int STATUS_ERRO = 4;
   
        
    // Indica o fim do status
    public static final int STATUS_FIM = 0;
    // Indica que eh o primeiro pacote do jogador: contem status da primeira rodada e as pecas do jogador 
    // [posicao_jogador] [peca1_valor1] [peca1_valor2] [peca2_valor1] [peca2_valor2]...
    public static final int STATUS_JOGADOR_INICIANDO = 1;   
    // Indica que vira uma jogada [rodada] [foi_toque], se nao: [quem_jogou] [lado_jogado] [peca_valor1] [peca_valor2]
    public static final int STATUS_JOGADA = 2;
       
    public static final int PECA_INICIAL = -1;
    public static final int LADO_DIREITO = 0;
    public static final int LADO_ESQUERDO = 1;
    
    public static final int JOGADOR1 = 0;
    public static final int JOGADOR2 = 1;
    public static final int JOGADOR3 = 2;
    public static final int JOGADOR4 = 3;
    public static final int EQUIPE1 = 4;
    public static final int EQUIPE2 = 5;
    
    public static final int N_MAX_STATUS = 10;
    
    public static final int FACIL = 0;
    public static final int NORMAL = 1;
    public static final int DIFICIL = 2;
    
    
    public static Command CMD_OK = new Command("OK", Command.BACK, 1);
    public static final Command CMD_SAIR = new Command("SAIR", Command.EXIT, 2);
    public static final Command CMD_JOGAR = new Command("JOGAR", Command.BACK, 2);
    public static final Command CMD_VOLTAR = new Command("VOLTAR", Command.EXIT, 2);
}
